A Space-Saving Technique for Assigning Algol 68 Multiple Values

نویسنده

  • Lambert G. L. T. Meertens
چکیده

The undghtforward way of elaborating an assignation d :its in an ALGOL 68 implementation is (1): • elaborate the destination d and the source s, yielding a name N and a value V; • assign fire value V to the Elaine N. In many cases, the elaboration of s will consist of the ovation of a copy on the working stack of an already existing value V. This value is assigned to N by copying it once more into the memory location(s) whose address is given by N. In most of these cases, simple compile-time optimization techniques permit a translation which does not make the extra copy on the working stack and instead copies the source directly Into the memory location(s) of the destination [21. Such an optimization is of %medal interest if a mutdpk value (array)is being sniped, since an extra copy of a law =Mp h value mi0tt take up more space than Is available. A multiple value might be copied by setting up a loop copying the individual elements one by one. However, a difficulty is encomtered here: the destinedoe and the source may overlap in memory. An example: After the declaration [1:3, 1:3) REAL or, molder the assignation 4,31 :at 41,1, whkh must astir the first row of* to the third column. Simpleminded application of the optimization woad result In code amoundng to

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

36 Algorithm

Algol 68 is considerably more difficult to learn than Pascal, partly due to the unusual terminology of Algol 68, which has not been widely accepted. The defining document of Algol 68 is much more elaborate and precise than the Pascal Report, but is also much more difficult to understand than the shorter and less formal Pascal document. This applies, in particular, to the two-level context-sensi...

متن کامل

The Persistent Store as an Enabling Technology for Integrated Project Support

The software engineering community has recognised the need for integrated project support environments (IPSEs) for some time. With such a system the user is provided with an integrated set of software tools with which to operate. Given this set of integrated software tools rather than a set of ad hoc tools the cost of software and project support throughout its life cycle is reduced. The techni...

متن کامل

Ackermann’s Function: a Study in the Efficiency of Calling Procedures

A six line recursive procedure is used to assess the efficiency of the procedure calling mechanism in ALGOL-like languages. The results from some 40 systems varying from ALGOL 68 and PL/I to System Implementation Languages for minicomputers are presented and compared. A hundred to one variation in performance occurs with this test, the major reasons for which are given. Received April 17, 1975....

متن کامل

On the Transformational Derivation of an Efficient Recognizer for Algol 68

During the sixties two level van Wijngaarden grammars (2vwg) were introduced for the formal definition of Algol 68. Two level van Wijngaarden grammars provide a formalism suited for writing rigorous formal definitions which read like human prose. Both the context free and context sensitive syntax of Algol 68 are defined in 2vwg. However, the specification is not executable. The Extended Affix G...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Inf. Process. Lett.

دوره 5  شماره 

صفحات  -

تاریخ انتشار 1976